package com.yunji.aggregate.model.vo.base;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yunji.common.annotation.Excel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @version 1.0
 * @Project: yunji-coffee
 * @Package com.yunji.user.vo
 * @FileName SiteVo.java
 * @Copyright Copyright © 2024 云集互联. All Rights Reserved
 * Company		com
 * @CreateTime 2024-05-30 19:37:33
 * @Description 网点响应参数
 * @Modification Author                    History Time			Version				Description
 * --------------------------------------------------------------------------------
 * HuaAo0803@163.com	2024-05-30 19:37:33		1.0					1.0 Version
 * @since JDK 1.8.0_202
 */
@Data
public class SiteStatisticsVO implements Serializable {
    private static final long serialVersionUID = 5143607302501286173L;

    @TableId(type = IdType.AUTO)
    @Excel(name = "主键ID", width = 15)
    private Long id;

    @ApiModelProperty("代理商ID")
    private Long belongId;

    @ApiModelProperty("网点类型")
    @Excel(name = "网点类型", width = 15)
    private Integer siteType;

    @ApiModelProperty("网点名称")
    @Excel(name = "网点名称", width = 15)
    private String siteName;

    @ApiModelProperty("网点联系人")
    @Excel(name = "网点联系人", width = 15)
    private String siteContacts;

    @ApiModelProperty("网点联系人手机号")
    @Excel(name = "网点联系人手机号", width = 15)
    private String siteTel;

    @ApiModelProperty("省份名称")
    @Excel(name = "省份名称", width = 15)
    private String provinceName;

    @ApiModelProperty("省份代码")
    private String provinceCode;

    @ApiModelProperty("城市名称")
    @Excel(name = "城市名称", width = 15)
    private String cityName;

    @ApiModelProperty("城市代码")
    private String cityCode;

    @ApiModelProperty("区县名称")
    @Excel(name = "区县名称", width = 15)
    private String countyName;

    @ApiModelProperty("区县代码")
    private String countyCode;

    @ApiModelProperty("网点地址")
    @Excel(name = "网点地址", width = 15)
    private String region;

    @ApiModelProperty("网点详细地址")
    @Excel(name = "网点详细地址", width = 15)
    private String address;

    @ApiModelProperty("状态 0-正常 1-禁用")
    @Excel(name = "状态 0-正常 1-禁用", width = 15)
    private Integer status;

    @ApiModelProperty("网点分成合同开始日期")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date siteScaleDateS;

    @ApiModelProperty("网点分成合同结束日期")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date siteScaleDateE;

    @ApiModelProperty(value = "代理ID")
    private Long agentId;

    @ApiModelProperty(value = "代理商名称")
    private String agentName;

    @ApiModelProperty("自定义价格, 默认为0")
    private Integer customPrice;

    @ApiModelProperty(value = "提点设置 0-不分成 1-按交易金额 2-按交易笔数 3 按年限(合同日期不能为空) 默认为:0")
    private Integer scaleType;

    @ApiModelProperty(value = "分成比例/每笔金额, 默认:0")
    private BigDecimal scale;

    @ApiModelProperty("员工人数")
    private Integer staffNums;

    @ApiModelProperty("货柜数量")
    private Integer containerNums;

    @ApiModelProperty("代理合作类型")
    private Integer cooperateWay;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "创建时间", dateFormat = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("创建时间")
    private Date createTime;

    @ApiModelProperty("按年限分润集合")
    private List<SiteScaleVO> siteScaleList;
}